const { isArguments } = require("lodash")

// for...in 循环  
const array = [1,2,3,4,5]  

// 数组、伪数组(arguments)、Set/Map创建的数据都可使用该方法循环
// for(const item in array){
//     // item -> 数组元素
//     console.log(item)

//     // 可终止循环
//     if(item > 4) {
//         break
//     }
// }  


// const s = new Set([1,2,3])
// for(const item of s){
//     console.log(item)
// }

// const m = new Map()
// m.set('foo', 1)
// m.set('bar', 2)
// for(const [key, value] of m){
//     console.log(key, value)
//     // [ 'foo', 1 ]
//     // [ 'bar', 2 ]
// }


// 无法遍历普通的object对象
// TypeError: obj is not iterable
// const obj = {
//     1:1,
//     2:2
// }
// for(const item of obj){
//     console.log(item)
// }